کار با دستورات SQL در محیط برنامه نویسی VBA
امروز می خواهیم راجع به دستورات SQL و نحوه کار و استفاده از آنها در محیط برنامه نویسی VBA با همدیگر صحبت کنیم.
SQL که مخفف کلمات Structural Query Language است را به معنای زبان جستجوی ساختار یافته ترجمه کرده اند .
اینکه تاریخچه این زبان به کی و کجا برمی گردد چیزی نیست که ما بخواهیم در اینجا به آن بپردازیم .
آن چیزی که ما در اینجا به دنبال آن هستیم این است که بتوانیم پاسخی به چند سوال زیر را پیدا کنیم .
۱- اول اینکه خود SQL چیست و چه کاربردی دارد . ؟
۲- دوم اینکه چرا باید از SQL و دستورات آن در محیط اکسس استفاده کنیم ؟
۳- سوم اینکه در کجاها و به چه نحو می توانیم از دستورات SQL استفاده کنیم ؟
برای یافتن پاسخ این سوالات از شما دعوت می کنم که تا انتهای این آموزش با من همراه باشید .
SQL چیست و چه کاربردی دارد . ؟
در مورد اینکه SQL چیست باید گفت که SQL یک زبان برنامه نویسی می باشد که اساس و مبنای کار آن برای مدیریت داده ها در بانکهای اطلاعاتی می باشد.
گستردگی و کاربرد فراوان این زبان در بین نرم افزار های پایگاه داده آنقدر فراوان است که این زبان توسط سازمانهای تدوین کننده استانداردهای جهانی مورد تائید و استانداردسازی شده است .
از جمله مهمترین این سازمانها می توان به سازمان جهانی استاندارد یا همان ISO و انستیتو اسناندارد آمریکا یا همان ANSI اشاره کرد .
در هر صورت کاربرد SQL در نرم افزار های مدیریت اطلاعات از نوع رابطه ای می تواند شامل مواردی همچون موضوعات زیر باشد .
۱- ایجاد و مدیریت جداول در پایگاه داده
۲- ایجاد و مدیریت پرس و جوهای مختلف از ساده تا پیشرفته در پایگاه داده .
۳- ایجاد و مدیریت اشیای محتلف در محیط نرم افزار های مختلف مدیریت پایگاه داده .
همانگونه که می دانید شرکت های نرم افزاری مختلف نرم افزارهای متفاوتی را برای مدیریت پایگاههای داده به بازار عرضه کرده اند .
از بین مهمترین و معروفترین این نرم افزار ها می توان به SQL Server و نرم افزار Oracle اشاره نمود .
این دو نرم افزار هر دو برای مدیریت اطلاعات در حجم های وسیع و بسیار بزرگ کاربرد دارند و هر دوی آنها نیز از زبان و دستورات SQL به خوبی پشتیبانی می کندد .
اما موضع بحث ما در خصوص نرم افزار اکسس است .
این نرم افزار برای مدیریت اطلاعات تا سطح متوسط کارایی بسیار قابل قبولی دارد .
در کنار بسیاری از مزایا و قابلیت های نرم افزار اکسس می توان به قابلیت پشتیبانی و کار با دستورات SQL اشاره کرد .
موضوعی که بیشتر در ادامه راجع به آن صحبت خواهیم کرد .
SQL بر مبنای دو اصل سهولت در دسترسی و خوانایی کدها و دستورات برنامه نویسی بنا شده است .
دستورات و کدهای SQL به نوبه خود از بخش های مختلفی تشکیل می شود که در اینجا به آنها اشاره می کنیم :
۱- کلمات کلیدی
کلمات کلیدی یا همان Key Words کلماتی هستند از پیش تعریف شده هستند که توسط زبان SQL قابل شناسایی هستند و هر کدام از آنها نیز عملکرد خاصی را ایجاد می کنند .
بعضی از معروفترین و در عین حال پرکاربردترین این کلمات شامل موارد زیر می باشد .
SELECT, INSERT, UPDATE, DROP, CREATE , DELETE
۲-کاراکترهای مشخص
در ساختار کدهای SQL برخی از کاراکترها هستند که در جای خود نقش های مهمی را ایفا می کننند .
اهمیت این کاراکترها تا حدی است که گاه عدم وجود یک کاراکتر در محلی که SQL انتظار وج.د آن را دارد می تواند باعث بروز خطا در روند اجرای کدها شود .
از مهمترین این کاراکترها می توان به پرانتزها – براکتها – علامتهای ستاره ، دلار ، نقطه و نقطه ویرگول اشاره کرد . ۳- عملگرهای ریاضی و منطقی .
این عملگرها هم جزء بسیار مهمی در ساختار کدهای SQL هستند .
از مهمترین این عملگرها می توان به علامتهای جمع ، ضرب ، تقسیم و تفریق بعنوان عملگرهای ریاضی و عملگرهای منطقی چون بزرگتر و کوچکتر و یا علامت مساوی به عنوان عملگرهای مقایسه ای نام برد .
چرا باید کار با دستورات SQL را یاد بگیریم ؟
هدف اصلی از ایجاد یک پایگاه داده توسط نرم افزار های مدیریت اطلاعات این است که ما بتوانیم اطلاعات مورد نظر خود را در یک مکان گردآوری کنیم انها را سازماندهی کرده و در نهایت بتوانیم به راحتی در بین این اطلاعات جستجو نموده و دیتاهای مورد نظر خود را از آنها استخراج کنیم .
کاری که نرم افزار اکسس به خوبی از عهده ان برمی آید .
اما واقعیت امر این است که نرم افزار اکسس اغلب این کارها را با استفاده از کدها و دستورات SQL به سرانجام می رساند .
هر چند که ممکن است که به لطف محیط گرافیکی ساده و روانی که برای اکسس فراهم شده است نیازی به تماس مستقیم با کدهای SQL سرو کله زدن با آنها را نداشته باشیم اما لازم است بدانییم که تمامی کارهایی که ما در محیط طراحی یک کوئری انجام می دهیم درواقع توسط کدهای SQL برای برنامه ترجمه شده و در نهایت خروجی مورد نظر ما در قالب یک کوئری برای ما به نمایش در می آید .
بنابراین خالی از لطف نخواهد بود که ما خود کار مدیریت این اطلاعات را به دست گیریم و این مستلزم این است که آشنایی کافی با دستورات زبان برنامه نویسی SQL داشته باشیم .
ما قبلا و در همین سایت راجع به دستورات پرکاربرد SQL در محیط کوئری های اکسس مفصل صحبت کرده و مسائل و موارد متعددی را در این زمینه با هم بررسی کردیم .
برای دسترسی به این مطالب می توانید به لینک زیر مراجعه کنید .
مطلب مرتبط : اکسس یا SQL سرور کار با کدام یکی را یاد بگیریم ؟
اما امروز می خواهیم تمرکز خود را بر روی استفاده از دستورات SQL در محیط برنامه نویسی VBA بگذاریم و ببینیم که چگونه می توانیم از این دستورات در محیط VBA استفاده کنیم .
کار با دستورات SQL در محیط VBE .
با محیط VBE که آشنایی دارید .
همان محیطی که ما در آن به ایجاد و مدیریت کدهای خود به زبان VBA می کنیم .
حالا می خواهیم ببینیم که چطور می توانیم کدهای SQL را در این محیط وارد و از انها استفاده کنیم .
برای اینکه بهتر با نحوه کاربرد این دستورات آشنا شویم من در اینجا به استفاده از مثال های مختلفی می پردازم که در تمامی آنها از کدهای SQL برای انجام کارهای مختلف استفاده می کنم تا شما با نحوه استفاده از این کدها در این محیط آشنا شوید .
اما قبل از شروع کار جدول اطلاعات زیر را در نظر بگیرید .
مطلب پیشنهادی :چطور متن ها را در داخل اکسس اعتبار سنجی کنید +ویدئو
ما از این جدول و اطلاعات درون آن برای بررسی مثالهای مختلف استفاده خواهیم کرد .
مثال -۱ : پر کردن مقادیر یک کمبو باکس با استفاده از دستورات SQL
فرض کنید که یک فرم داریم و بر روی این فرم یک کمبو باکس قرار داده ایم .
می خواهیم در این کمبو باکس نام تمامی کتابهایی را که در این جدول وجود دارند را قرار دهیم .
یکی از راههایی که برای این کار می توانیم از آن استفاده کنیم استفاده از دستور Select در ساختار SQL است .
به کدهای یر توجه کنید .
()Private Sub Form_Load Dim strsql As String "strsql = "SELECT bookname FROM tblbooks "Me.Combo1.RowSourceType = "Table/Query Me.Combo1.RowSource = strsql End Sub
ما در اینجا این کد را در رویداد On Load فرم خود و هر بار که فرم ما اجرا شود کمبو باکس ما لیستی از تمامی نام کتابهای موجود در جدول را فراخوانی و در خود نگه می دارد .
مثال-۲ : اضافه کردن مقادیر مورد نظر به جدول
ما در این جدول ستونی داریم به نام قیمت .
فرض کنید که می خواهیم به قیمت هر کدام از این کتابها مبلغ ۲۰۰۰ تومان بطور ثابت اضافه کنیم .
برای این منظور از کدهایی مانند زیر استفاده می کنیم .
()Private Sub cmdAdd_Click Dim strsql As String "strsql = "UPDATE tblbooks SET tblbooks.price = tblbooks.price+2000 (DoCmd.RunSQL (strsql End Sub
ما در اینجا یک دکمه بر روی فرم خود قرار دادیم و کد مربوط به اضافه کردن مقدار مورد نظر خود را در داخل ان وارد کردیم .
با این کار هر گاه کاربر بر روی این دکمه کلیک کند به طور خودکار مبلغ ۲۰۰۰ تومان به کل مبالغ موجود در ستون مربوط به قیمت کتابها اضافه می شود .
مثال-۳: حذف مقادیر مورد نظر از جدول
در این مثال می خواهیم ببینیم که چگونه به کمک دستورات SQL می توانیم مقادیر مورد نظر خود را از جدول حذف کنیم .
فرض کنید که در اینجا من می خواهم اطلاعات مربوط به کتابی به نام مکتوب را از جدول خود حذف کنم .
برای این کار می توانم از کد زیر استفاده کنیم .
DELETE * tblbooks.bookname, tblbooks FROM tblbooks (("مکتوب"=WHERE (((tblbooks.bookname
.
دیدگاهتان را بنویسید